package com.mybatis.mapper;
import com.mybatis.pojo.UserInfo;
import org.apache.ibatis.annotations.Param;
import java.util.List;

/**
 * @author nmm
 * @date 2024-03-2024/3/7
 * @deriction njm......
 */
public interface UserMapper {

    /***
    * @Description:  添加方法
    * @Param: UserInfo对象
    * @return: 受影响行数
    */
    int AddUser(UserInfo userInfo);


    /***
     * @Description:  批量添加方法
     * @Param: List<UserInfo> list集合
     * @return: 受影响行数
     */
    int BatchAddUser(@Param("userlist") List<UserInfo> userInfoList);


    /***
     * @Description:  修改方法
     * @Param: UserInfo对象
     * @return: 受影响行数
     */
    int UpdateUserById(UserInfo userInfo);

    /***
     * @Description:  删除方法
     * @Param: id:用户编号
     * @return: 受影响行数
     */
    int DelUserById(Long id);


    /***
     * @Description:  查询:通过编号查询用户
     * @Param:  用户id
     * @return: UserInfo对象
     */
    UserInfo QueryUserById(@Param("id") Long id);

    /***
     * @Description: 分页查询:通过使用分页插件进行分页查询
     * @Param:
     * @return:  List<UserInfo> 集合
     */
    List<UserInfo> QueryLimitWithPageHelper();


    /***
    * @Description: 分页查询
    * @Param: current:当前页码(当前页-1*每页的总记录数),totalcount:每页的总记录数
    * @return:  List<UserInfo> 集合
    */
    List<UserInfo> QueryByLimit(@Param("currenindex") Long currenindex,@Param("totalcount") Long totalcount);

}